home *** CD-ROM | disk | FTP | other *** search
/ Aminet 30 / Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso / Aminet / text / misc / 2b_Ort.lha / Ort / ARexx / WWSprWyraz.rexx < prev   
OS/2 REXX Batch file  |  1999-02-10  |  3KB  |  104 lines

  1. /*
  2. $ver: WWSprWyraz.rexx 1.1 (08.02.99) BLABLA PRODUCT
  3. © 1998-1999 Siumot/BlaBla
  4.  
  5. Ten skrypt jest przeznaczony dla programu WordWorth 6+. Sprawdza on poprawnoôê
  6. pod wzglëdem ortograficznym wyrazu znajdujâcego sië pod kursorem tekstowym.
  7. Jeôli w konfiguracji programu Ort jest ustawione îâczenie wyrazów a pod kursorem
  8. znajduje sië wyraz, który Ort îâczy (np. "nie") to skrypt odczyta nastëpny wyraz
  9. i do sprawdzenia przeôle poîâczone wyrazy (np. "nie lubië"). W takiej sytuacji
  10. kursor tekstowy zostanie przesuniëty na drugi wyraz. Skrypt naleûy zainstalowaê
  11. jako makro ARexxa w programie WordWorth 6+.
  12.  
  13. UWAGA!!! Jeôli nie zainstalowaîeô tego skryptu skryptem instalacyjnym Orta,
  14.          to musisz dopisaê nastëpujâcâ linië:
  15.          ORTFILENAME=ôcieûka dostëpu/Ort
  16.      Zamiast "ôcieûka dostëpu" naleûy oczywiôcie wpisaê ôcieûkë dostëpu
  17.          do programu Ort (np. ORTFILENAME=dh2:tekst/ort/ort).
  18. */
  19.  
  20. OPTIONS RESULTS
  21.  
  22. loncz_wyr='NIE NA CO PO JAK OD W BEZ Z NAD'
  23.  
  24. IF ~SHOW('P', '2b_Ort_rexx') THEN DO
  25.    IF ORTFILENAME='ORTFILENAME' THEN DO
  26.      REQUESTNOTIFY 'Program Ort nie jest uruchomiony.'
  27.      EXIT
  28.    END
  29.    ADDRESS COMMAND 'Run >NIL: "'ORTFILENAME'" CX_POPUP'
  30.    ADDRESS COMMAND 'WaitForPort 2b_Ort_rexx'
  31. END
  32.  
  33. ADDRESS '2b_Ort_rexx' INFO Version
  34. IF RESULT<1.1 THEN DO
  35.     REQUESTNOTIFY 'Skrypt wymaga Orta w wersji 1.1+'
  36.     EXIT
  37. END
  38.  
  39. wyraz=GetWord()
  40.  
  41. ADDRESS '2b_Ort_rexx' Prefs Join Words
  42. czylacz=RESULT
  43.  
  44. IF wyraz='' THEN DO
  45.   REQUESTNOTIFY  'Nie ma wyrazu pod kursorem!'
  46.   Exit
  47. END
  48.  
  49. IF czylacz=1 THEN DO
  50.   ADDRESS '2b_Ort_rexx' Del Punctuation 1 UPPER(wyraz)
  51.   wyraz_duzy=RESULT
  52.   IF ~(FIND(loncz_wyr,wyraz_duzy)=0) THEN DO
  53.     POSITION EOW
  54.     dczlon=GetWord()
  55.     IF FIND(loncz_wyr' I A RESULT',UPPER(dczlon))=0 THEN wyraz=wyraz' 'dczlon
  56.     ELSE POSITION SOW
  57.   END
  58. END
  59.  
  60. ADDRESS '2b_Ort_rexx'
  61.  
  62. Correction wyraz
  63. err=RESULT
  64. IF wyraz=='¶' THEN err=0
  65.  
  66. IF err=0 THEN tekst='Wyraz poprawny'
  67. ELSE IF err=1 THEN tekst='Nieznany wyraz'
  68. ELSE IF err=2 THEN tekst='Wyraz jest wyjâtkiem'
  69. ELSE IF err=3 THEN tekst='Bîâd interpunkcyjny'
  70.  
  71. ADDRESS
  72.  
  73. IF err=1 THEN DO
  74.   ADDRESS '2b_Ort_rexx' Del Punctuation 3 wyraz
  75.   WIZARDREQ TITLE 'Ort' LABEL 'Sprawdzany wyraz: 'RESULT LABEL 'Wyraz jest niepoprawny lub nie zostaî dopisany do sîownika ORTa.' BUTTON 1 'D.Globalnie' BUTTON 2 'D.Specjal.' BUTTON 3 'Opuszczaj' BUTTON 0 'Poniechaj'
  76.   operacja=RESULT
  77.   ADDRESS '2b_Ort_rexx'
  78.   IF operacja=1 THEN Add Global wyraz
  79.   ELSE IF operacja=2 THEN Add Specialistic wyraz
  80.   ELSE IF operacja=3 THEN Add Omit wyraz
  81. END
  82. ELSE REQUESTNOTIFY tekst
  83.  
  84. EXIT
  85.  
  86. GetWord:
  87.     POSITION EOW
  88.     POSITION SOW
  89.     SHIFTDOWN
  90.     ALTDOWN
  91.     CURSOR RIGHT
  92.     ALTUP
  93.     GETTEXT
  94.     word=RESULT
  95.     pozycja=POS(' ',word)
  96.     IF pozycja>0 THEN DO
  97.       DO a=1 TO (Length(word)-pozycja+1)
  98.         CURSOR LEFT
  99.       END
  100.       word=Left(word,pozycja-1)
  101.     END
  102.     SHIFTUP
  103. RETURN word
  104.